package com.tanhua.domain.vo;

import lombok.Builder;
import lombok.Data;

/**
 * 统一封装的异常信息类，在服务端出现异常时，响应给客户端
 *
 */
@Data
@Builder
public class ErrorResult {

    private String errCode;
    private String errMessage;

    public static ErrorResult error() {
        return ErrorResult.builder().errCode("999999").errMessage("系统异常稍后再试").build();
    }

    public static ErrorResult smsSendFailed() {
        return ErrorResult.builder().errCode("000000").errMessage("发送验证码失败").build();
    }

    public static ErrorResult smsNotYetValid() {
        return ErrorResult.builder().errCode("000001").errMessage("上一次发送的验证码还未失效").build();
    }

    public static ErrorResult smsInvalid() {
        return ErrorResult.builder().errCode("000002").errMessage("验证码错误或已失效").build();
    }

    public static ErrorResult faceDetectFailed() {
        return ErrorResult.builder().errCode("000003").errMessage("图片非人像，请重新上传!").build();
    }

    public static ErrorResult entryInhibited() {
        return ErrorResult.builder().errCode("000004").errMessage("账号冻结，禁止登录!").build();
    }

    public static ErrorResult prohibitComments() {
        return ErrorResult.builder().errCode("000004").errMessage("账号冻结，禁止评论").build();
    }

    public static ErrorResult banPublished() {
        return ErrorResult.builder().errCode("000004").errMessage("账号冻结，禁止发布动态!").build();
    }
}